<?php
header("Content-Type: text/html; charset=UTF-8", true);
$page = isset($_POST['page']) ? intval($_POST['page']) : 1;
$rows = isset($_POST['rows']) ? intval($_POST['rows']) : 10;
$offset = ($page-1)*$rows;

include $app."dao/dao_consulta.php";
include_once $app."dao/model_cliente.php";
include_once $app."dao/model_carga.php";

//Mudar em outra consulta
$dao_consulta = new dao_consulta(new model_carga());

$parametros = Array();

$campos = NULL;
if(isset($_POST["consulta"])){
    parse_str($_POST["consulta"], $campos);
}

if($campos["CLI_FANTASIA"] == ""){
    throw new Exception("O campo CLI_FANTASIA n&atilde;o pode ser nulo!");
}

$string_where = "WHERE CLI.CLI_FANTASIA LIKE ?";

$string_where .= " AND CAR_DH_VALIDADE > NOW()";

//Mudar em outra consulta
$sql_count = "SELECT COUNT(CAR_ID) FROM vw_carga AS CAR INNER JOIN cliente AS CLI ON CAR.CLI_ID = CLI.CLI_ID $string_where";
$sql_consulta = "SELECT CAR.*, CLI.* FROM vw_carga AS CAR INNER JOIN cliente AS CLI ON CAR.CLI_ID = CLI.CLI_ID $string_where limit $offset,$rows";

$total = $dao_consulta->count_consulta($sql_count, array("%".$campos["CLI_FANTASIA"]."%"));

$retorno["total"] = $total;
$retorno["rows"] = Array();

$campos = $dao_consulta->select_consulta($sql_consulta, array("%".$campos["CLI_FANTASIA"]."%"));

//Mudar em outra consulta
if ($campos)
    foreach ($campos as $value) {
        $model_resultado = new model_cliente();
        $model_resultado->populateFromBanco($value);
        $retorno["rows"][] = Array (
            "CAR_ID" => $model_resultado->getCAR_ID(),
            "CLI_FANTASIA" => $model_resultado->getCLI_FANTASIA(),
            "CAR_ORIGEM" => $model_resultado->getCID_ORIGEM_NOME()."/".$model_resultado->getEST_ORIGEM_SIGLA(),
            "CAR_DESTINO" => $model_resultado->getCID_DESTINO_NOME()."/".$model_resultado->getEST_DESTINO_SIGLA(),
            "CAR_PRODUTO" => $model_resultado->getCAR_PRODUTO(),
            "CAR_PESO" => $model_resultado->getCAR_PESO()." t",
            "CAR_ESPECIE" => $model_resultado->getCAR_ESPECIE(),
            "CAR_VALOR" => $model_resultado->getCAR_VALOR(),
            "CAR_VEICULO" => $model_resultado->getCAR_VEICULO(),
            "CAR_RASTREADO" => $model_resultado->getCAR_RASTREADO() == "0"? "N&atilde;o" : "Sim",
            "CAR_CARROCERIA" => $model_resultado->getCAR_CARROCERIA(),
            "CAR_OBSERVACAO" => $model_resultado->getCAR_OBSERVACAO(),
            "CAR_DATA_REGISTRO" => $model_resultado->getCAR_DATA_REGISTRO(),
            "CAR_DATA_VALIDADE" => $model_resultado->getCAR_DATA_VALIDADE()?$model_resultado->getCAR_DATA_VALIDADE():"Em aberto",
            "CLI_ID" => $model_resultado->getCLI_ID(),
            "CID_ORIGEM_LAT" => $model_resultado->getCID_ORIGEM_LAT(),
            "CID_ORIGEM_LNG" => $model_resultado->getCID_ORIGEM_LNG(),
            "CID_DESTINO_LAT" => $model_resultado->getCID_DESTINO_LAT(),
            "CID_DESTINO_LNG" => $model_resultado->getCID_DESTINO_LNG()
            );
    }
    
echo json_encode($retorno);
?>